package com.geek.homework.For;

/**
 * @author SunBingJian
 * @desc TODO
 * @date 2025/9/2
 */

/**
 *5.有口井7米深，一只青蛙白天爬3米，晚上坠下2米，问这青蛙几天才能爬出这口井(for)
 */
public class For_work05 {
    
    public static void main(String[] args) {
        //已知条件
        int wellDepth = 7; // 井深7米
        int dayClimb = 3;  // 白天爬3米
        int nightFall = 2; // 晚上坠下2米

        //设置的未知数
        int currentHeight = 0; // 青蛙当前高度
        int days = 0; // 天数计数器

        //题目
        System.out.println("青蛙爬井问题求解：");
        System.out.println("井深：" + wellDepth + "米");
        System.out.println("白天爬：" + dayClimb + "米，晚上坠：" + nightFall + "米");
        System.out.println();
        
        // 使用for循环，设置一个足够大的上限（理论上青蛙最多需要几天就能爬出）
        for (int day = 1; day <= 100; day++) {
            days = day; // 记录当前天数
            
            // 白天爬升
            currentHeight += dayClimb;
            System.out.println("第" + day + "天白天：爬到" + currentHeight + "米");
            
            // 检查是否已经爬出井口
            if (currentHeight >= wellDepth) {
                System.out.println("青蛙成功爬出井口！");
                break; // 爬出井口，退出循环
            }
            
            // 晚上坠落
            currentHeight -= nightFall;
            System.out.println("第" + day + "天晚上：坠落到" + currentHeight + "米");
            System.out.println();
        }

        //系统结果提示
        System.out.println("答案：青蛙需要" + days + "天才能爬出这口井。");
    }
}
